<!DOCTYPE html>
<html>

<head>
    <meta charset='UTF-8'>
    <meta name='viewport' content='width=device-width,initial-scale=1.0'>
    <meta http-equiv='X-UA-Compatible' content='ie=edge'>
    <title>Document</title>
</head>

<body>
    <div id='app'>
        <!-- 过滤器:
            作用:文本格式化 data->msg->'abc' -> Abc
            分类:全局和局部
            使用位置:{{}}或者v-bind:属性名="表达式"
            如何使用{{msg | 过滤器的名字}}
        -->
        <!-- <p>{{msg}}</p> -->
        <!-- <hr> -->
        <p>{{msg | toUpper('123')}}</p>

    </div>
    <hr>

    <div id="a">

        {{str | toUpper('456')}}
    </div>
    <script src='./vue.js'></script>
    <script>
        // 全局过滤器
        // 1. 在newVue之前通过Vue.filter()定义过滤器
        // 2. Vue.filter('过滤器的名字',(v)=>{return v})
        // 注意: v不需要手动传入 会将|前面的数据自动进行传入
        // 3. 在视图中使用过滤器 {{msg|过滤器的名字}}

        // 需求: msg:'abc' -> 'Abc'
        Vue.filter('toUpper', (v, count) => {
            console.log(count);

            // console.log(v);
            // v就是将要这个过滤器要处理的数据 msg
            // charAt(0)
            v = v.charAt(0).toUpperCase() + v.substr(1);
            return v;
        });

        new Vue({
            el: '#app',
            data: {
                msg: 'abc'
            },
            methods: {

            }
        });

        new Vue({
            el: '#a',
            data: {
                str: 'xyz'
            }
        })
    </script>
</body>

</html>